package com.penghaisoft.microwms.base.web.data.service;


import com.penghaisoft.microwms.common.data.model.MdWorkarea;
import com.penghaisoft.microwms.common.dto.BuzUserWorkArea;
import com.penghaisoft.microwms.common.dto.Resp;
import com.penghaisoft.microwms.common.page.Pager;

import java.util.List;

/**
 * @Description 工作区 维护
 * @author luoteng
 * @date 2017年5月24日 下午2:30:06 
 * @version 1.0
 */
public interface IMdWorkareaService {
	
	/** 
	 * @Title create
	 * @Description 新增记录
	 * @author luoteng
	 * @date 2017年5月24日 下午2:30:38
	 * @param mdWorkarea
	 * @return Resp
	 */
	public Resp create(MdWorkarea mdWorkarea);

	/** 
	 * @Title delete
	 * @Description 删除记录
	 * @author luoteng
	 * @date 2017年5月24日 下午2:30:58
	 * @param mdWorkarea
	 * @return Resp
	 */
	public Resp delete(MdWorkarea mdWorkarea);
	
	/** 
	 * @Title findListByCondition
	 * @Description 根据条件查询记录
	 * @author luoteng
	 * @date 2017年5月24日 下午2:31:13
	 * @param page
	 * @param rows
	 * @param condition
	 * @return Pager<MdWorkarea>
	 */
	public Pager<MdWorkarea> findListByCondition(int page, int rows, MdWorkarea condition);
	
	/** 
	 * @Title findById
	 * @Description 根据id查询记录
	 * @author luoteng
	 * @date 2017年5月24日 下午2:31:30
	 * @param id
	 * @return MdWorkarea
	 */
	public MdWorkarea findById(String id);
	
	/** 
	 * @Title update
	 * @Description 修改记录
	 * @author luoteng
	 * @date 2017年5月24日 下午2:31:51
	 * @param mdWorkarea
	 * @return Resp
	 */
	public Resp update(MdWorkarea mdWorkarea);

	/**
	 * @Title queryWorkAreasUnderFactoryWh
	 * @Description 查询工厂下的工作区
	 * @author luoteng
	 * @date 2017年5月24日 下午2:32:11
	 * @return List<BuzUserWorkArea>
	 */
	public List<BuzUserWorkArea> queryWorkAreasUnderFactoryWh();
	
	/** 
	* @Title: queryWorkAreasUnderWh 
	* @Description: 
	* @author zhangxu 
	* @2017年6月6日:2017年6月6日:下午4:10:01
	* @param @param mdWorkarea
	* @param @return    
	* @return List<MdWorkarea>
	* @version V0.1    
	* @throws 
	*/
	public List<MdWorkarea> queryWorkAreasUnderWh(MdWorkarea mdWorkarea);
	/**
	 * @Description: 根据工作区，获取区域编码
	 * @param @param workareaCode
	 * @param @return   
	 * @return List<String>  
	 * @author sun_yq
	 * @date 2017年9月1日 上午10:52:21
	 */
	List<String> queryWdCodeByWorkarea(String workareaCode);
}
